-
Notifications
You must be signed in to change notification settings - Fork 273
Include SSA lhs and rhs in extended JSON trace #4914
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
Codecov Report
@@ Coverage Diff @@
## develop #4914 +/- ##
===========================================
- Coverage 69.24% 69.19% -0.05%
===========================================
Files 1309 1307 -2
Lines 108476 107967 -509
===========================================
- Hits 75117 74712 -405
+ Misses 33359 33255 -104
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✔️
Passed Diffblue compatibility checks (cbmc commit: 7a4135f).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/119404690
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's have a couple of regression tests exercising this, then lgtm
Which aspects specifically would you like to see tested? Right now, there is one test checking "yes, something is printed." Since the consumer is not yet very well-defined (tentatively cbmc-viewer) I'm not entirely sure what the expectation is. |
Given the support you've added, I'd expect a program with only a declaration in addition to the assignment already tested; other than that as you say the requirements are pretty weak so far |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✔️
Passed Diffblue compatibility checks (cbmc commit: 754b245).
Build URL: https://travis-ci.com/diffblue/test-gen/builds/119481318
Note that we used to have these fields. Part of the rationale for removing them was the idea that a "goto trace" should be an artefact that is just that -- and independent of how it got computed. In particular, a goal was that it should be possible to produce one using a simulator or plain execution. I am wondering whether the higher-level goal (dependency analysis) can perhaps be achieved in other ways? |
@kroening All ideas welcome - it's about ways to understand how we arrived at a certain value being assigned. With CBMC's scalability improving, counterexamples get longer and thus become less useful as a diagnostic tool. This is just what seemed like the simplest step. |
The full SSA identifiers will permit building tools that trace assigned values back to inputs.
Follow-up note: maybe |
All ideas... well... we could implement an |
The full SSA identifiers will permit building tools that trace
assigned values back to inputs.